package cn.maihe.elg.operation.supports.invoice.nuonuo.dto;

import lombok.Data;

import java.util.List;

/**
 * @Description
 * @Author CAIXH
 * @Date 2023/5/17
 */
@Data
public class RedOrderReqDTO {
    /**
     * 红字确认单申请号，需要保持唯一，不传的话系统自动生成一个
     **/
    private String billId;
    /**
     * 对应蓝票发票种类: bs:电子发票(增值税专用发票)， pc:电子发票(普通发票)，es:全电纸质发票(增值税专用发票)， ec:全电纸质发票(普通发票)，p:普通发票（电票），c:普通发票（纸票），s:专用发票，b:增值税电子专用发票
     **/
    private String blueInvoiceLine;
    /**
     * 申请方（录入方）身份： 0 销方 1 购方
     **/
    private String applySource;
    /**
     * 对应蓝字发票号码（蓝票是增值税发票时必传，长度为8位数字，若传20位数字则视为是蓝字数电票号码）
     **/
    private String blueInvoiceNumber;
    /**
     * 对应蓝字发票代码（蓝票是增值税发票时必传）
     **/
    private String blueInvoiceCode;
    /**
     * 对应蓝字数电票号码（数电普票、数电专票、数纸普票、数纸专票都需要传，蓝票是增值税发票时不传）
     **/
    private String blueElecInvoiceNumber;
    /**
     * 填开时间（时间戳格式），默认为当前时间
     **/
    private String billTime;
    /**
     * 销方税号
     **/
    private String sellerTaxNo;
    /**
     * 销方名称，申请说明为销方申请时可为空
     **/
    private String sellerName;
    /**
     * 部门门店id（诺诺网系统中的id）
     **/
    private String departmentId;
    /**
     * 开票员id（诺诺网系统中的id）
     **/
    private String clerkId;
    /**
     * 购方税号
     **/
    private String buyerTaxNo;
    /**
     * 购方名称
     **/
    private String buyerName;
    /**
     * 蓝字发票增值税用途（预留字段可为空）: 1 勾选抵扣 2 出口退税 3 代办出口退税 4 不抵扣
     **/
    private String vatUsage;
    /**
     * 蓝字发票消费税用途（预留字段可为空）
     **/
    private String saleTaxUsage;
    /**
     * 发票入账状态（预留字段可为空）： 0 未入账 1 已入账
     **/
    private String accountStatus;
    /**
     * 冲红原因： 1销货退回 2开票有误 3服务中止 4销售折让
     **/
    private String redReason;
    /**
     * 分机号
     **/
    private String extensionNumber;
    /**
     * 是否自动开票，0否（不传默认0）1是；传1时，所申请的确认单变为购销双方已确认或无需确认状态时，而自动开具红票。目前该字段不生效，电票都自动开，纸票都不自动
     **/
    private String autoInvoice;
    /**
     * 若有值，则在无需确认或购销双方已确认后去自动开红票，发票的开票单号用该值
     **/
    private String orderNo;
    /**
     * 交付手机，红票优先取该值，不传默认取原蓝票
     **/
    private String phone;
    /**
     * 交付邮箱，红票优先取该值，不传默认取原蓝票
     **/
    private String email;
    /**
     * 确认单回传地址，回调内容可联系服务人员；自动开票时，会透传到开票接口
     **/
    private String callbackUrl;

    private List<RedOrderDetailDTO> detail;
}
